// -----------------------------
// Author: 		Dhaenens Gert 
// Creation: 	10/22/2014 4:34:33 PM				
// -----------------------------

#ifndef _EmbeddedResources_h
#define _EmbeddedResources_h

#include "Common.h"
#include "Resources.h"


/* Libraries */
typedef pair<WORD, TString> Library;
Library g_Libraries[] =
{

	// Libraries
	#ifdef WIN64
	#ifdef _DEBUG
	Library{ IDR_DXLIB, _T("DxLib_d.dll") },
	Library{ IDR_D3DCOMPILER, _T("d3dcompiler_47.dll") },
	Library{ IDR_FMODLIB, _T("fmodexL64.dll") },
	#else
	Library{ IDR_DXLIB, _T("DxLib.dll") },
	Library{ IDR_D3DCOMPILER, _T("d3dcompiler_47.dll") },
	Library{ IDR_FMODLIB, _T("fmodex64.dll") },
	#endif
	#else
	#ifdef _DEBUG
	Library{ IDR_DXLIB, _T("DxLib_d.dll") },
	Library{ IDR_D3DCOMPILER, _T("d3dcompiler_47.dll") },
	Library{ IDR_FMODLIB, _T("fmodexL.dll") },
	#else
	Library{ IDR_DXLIB, _T("DxLib.dll") },
	Library{ IDR_D3DCOMPILER, _T("d3dcompiler_47.dll") },
	Library{ IDR_FMODLIB, _T("fmodex.dll") },
	#endif
	#endif


};

/* Resources */
typedef tuple<WORD, const TChar*, const TChar*> Resource;
Resource g_Resources[] =
{
	// Shaders
	Resource{ IDR_SHADER_LIGHTINGPASS, _T("SHADER"), _T("Shader_LightingPass") },
	Resource{ IDR_SHADER_GUICOPY, _T("SHADER"), _T("Shader_GUICopy") },

	Resource{ IDR_SHADER_DEFAULTVERTEX, _T("SHADER"), _T("Shader_DefaultVertex") },
	Resource{ IDR_SHADER_DEFAULTPIXEL, _T("SHADER"), _T("Shader_DefaultPixel") },

	Resource{ IDR_SHADER_WATERVERTEX, _T("SHADER"), _T("Shader_WaterVertex") },
	Resource{ IDR_SHADER_WATERHULL, _T("SHADER"), _T("Shader_WaterHull") },
	Resource{ IDR_SHADER_WATERDOMAIN, _T("SHADER"), _T("Shader_WaterDomain") },
	Resource{ IDR_SHADER_WATERGEOMETRY, _T("SHADER"), _T("Shader_WaterGeometry") },
	Resource{ IDR_SHADER_WATERPIXEL, _T("SHADER"), _T("Shader_WaterPixel") },

	Resource{ IDR_SHADER_SKYBOXVERTEX, _T("SHADER"), _T("Shader_SkyboxVertex") },
	Resource{ IDR_SHADER_SKYBOXPIXEL, _T("SHADER"), _T("Shader_SkyboxPixel") },

	Resource{ IDR_SHADER_TERRAINVERTEX, _T("SHADER"), _T("Shader_TerrainVertex") },
	Resource{ IDR_SHADER_TERRAINHULL, _T("SHADER"), _T("Shader_TerrainHull") },
	Resource{ IDR_SHADER_TERRAINDOMAIN, _T("SHADER"), _T("Shader_TerrainDomain") },
	Resource{ IDR_SHADER_TERRAINGEOMETRY, _T("SHADER"), _T("Shader_TerrainGeometry") },
	Resource{ IDR_SHADER_TERRAINPIXEL, _T("SHADER"), _T("Shader_TerrainPixel") },

	Resource{ IDR_SHADER_POSTCOMPUTE, _T("SHADER"), _T("Shader_PostCompute") },
};

#endif